package com.bindatax.core.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class BinDataxStringUtil {
    public static String md5(String str){
        StringBuffer md5sb = new StringBuffer("-");
        try {
            // 加密对象，指定加密方式
            MessageDigest md5 = null;
            md5 = MessageDigest.getInstance("md5");
            // 准备要加密的数据
            byte[] b = str.getBytes();
            // 加密
            byte[] digest = md5.digest(b);
            // 十六进制的字符
            char[] chars = new char[] { '0', '1', '2', '3', '4', '5',
                    '6', '7' , '8', '9', 'A', 'B', 'C', 'D', 'E','F' };
            // 处理成十六进制的字符串(通常)
            md5sb.setLength(0);
            for (byte bb : digest) {
                md5sb.append(chars[(bb >> 4) & 15]);
                md5sb.append(chars[bb & 15]);
            }
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return md5sb.toString();
    }
}
